Various forms of electronic games of chance have been available for many years. The way these games are played, however, is changing dramatically with the use of digital computers operating on electronic networks such as the Internet. Players can now connect to a remote server and wager electronically.
Rather than traveling to a casino, a player can log into an electronic game and wager from the comforts of his own home. While this remote playing has many advantages, it raises several security issues. For example, when playing card games at a casino, a player can observe the dealer shuffle and deal the cards and thus has some confidence that the outcome was generated randomly. In an electronic casino, the shuffling process is typically digitally generated, driven by random number generators which the player cannot see. The player cannot know whether the random number generated is truly random or was selected by the casino to give it an advantage.
Electronic game providers have tried to increase players' confidence in the legitimacy of games by assuring players that gaming software has not been tampered with. For example, an electronic game provider may allow an independent third party to perform an audit of the software. This is a time-consuming and expensive process, however. With complex software running into the hundreds of thousands of lines of code, it is very difficult to find a few lines of code that alter the randomness of the outcomes.
Some electronic lottery systems have subscribed to methods for securing communications between remote player terminals and a central controller. U.S. Pat. No. 4,652,998 to Koza, for example, describes cryptographic methods for securing these communications. In games dependent on the use of random numbers, however, simply securing the transmission of a fraudulent random number does not solve the problems inherent in the prior art.
Although there are many patents which describe the generation of random numbers, such as U.S. Pat. No. 3,548,174 to Knuth, they describe only methods for improving the statistical performance of random number generators.